package com.zzx.business.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.zzx.common.annotation.Excel;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.zzx.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import lombok.experimental.Accessors;

/**
 * 运输信息对象 business_freight_order
 *
 * @author Z、zx
 * @date 2024-08-21
 */
@Data
@Accessors(chain = true)
@ToString(callSuper = true)
@EqualsAndHashCode(callSuper = true)
public class BusinessFreightOrder extends BaseEntity {

    /**
     * 主键ID
     */
    private Long id;

    /**
     * 运输编号 唯一
     */
    @Excel(name = "运输编号 唯一")
    private String checkNo;

    /**
     * 源头站点编号
     */
    @Excel(name = "源头站点编号")
    private String startSiteCode;

    /**
     * 源头站点名称
     */
    @Excel(name = "源头站点名称")
    private String startSiteName;

    /**
     * 收货站点编号
     */
    @Excel(name = "收货站点编号")
    private String endSiteCode;

    /**
     * 收货站点名称
     */
    @Excel(name = "收货站点名称")
    private String endSiteName;

    /**
     * 车牌号
     */
    @Excel(name = "车牌号")
    private String plate;

    /**
     * 挂车号
     */
    @Excel(name = "挂车号")
    private String plateGua;

    /**
     * 司机姓名
     */
    @Excel(name = "司机姓名")
    private String driverName;

    /**
     * 身份证
     */
    @Excel(name = "身份证")
    private String driverCard;

    /**
     * 司机电话
     */
    @Excel(name = "司机电话")
    private String driverPhone;

    /**
     * 总重，单位：kg
     */
    @Excel(name = "总重，单位：kg")
    private BigDecimal weightSum;

    /**
     * 车重，单位：kg
     */
    @Excel(name = "车重，单位：kg")
    private BigDecimal weightTruck;

    /**
     * 货物编码
     */
    @Excel(name = "货物编码")
    private String productCode;

    /**
     * 货物名称
     */
    @Excel(name = "货物名称")
    private String productName;

    /**
     * 出货单价
     */
    @Excel(name = "出货单价")
    private BigDecimal productPrice;

    /**
     * 出货总价
     */
    @Excel(name = "出货总价")
    private BigDecimal productTotalPrice;

    /**
     * 净重（货物重量），单位：kg
     */
    @Excel(name = "净重", readConverterExp = "货=物重量")
    private BigDecimal weightNet;

    /**
     * 限重，单位：kg
     */
    @Excel(name = "限重，单位：kg")
    private BigDecimal limitWeight;

    /**
     * 是否超载
     */
    @Excel(name = "是否超载")
    private String isOverWeight;

    /**
     * 发车时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "发车时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date startTime;

    /**
     * 收货时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "收货时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date endTime;

    /**
     * 运输状态：运输中、已完成、已作废。。。
     */
    @Excel(name = "运输状态：运输中、已完成、已作废。。。")
    private String status;

    /**
     * 运输单号
     */
    @Excel(name = "运输单号")
    private String orderNo;

    /**
     * 运输单
     */
    @Excel(name = "运输单")
    private String orderImg;

    /**
     * 运输价
     */
    @Excel(name = "运输价")
    private BigDecimal orderPrice;

    /**
     * 总价
     */
    @Excel(name = "总价")
    private BigDecimal totalPrice;

    private String isPay;

}
